Detection of media links in broadcast signals

ABSTRACT

A detection apparatus includes a tuner tuned to the program and a meter coupled to the tuner and arranged to detect content ancillary information from the program tuned by the tuner. The content ancillary information may be a media link, closed captioning information, or the like. The meter may also be arranged to extract a broadcast signature from the program. A comparator compares the broadcast signature to a reference signature selected from a library of reference signatures based upon the content ancillary information. Broadcast signatures from unknown programs may be clustered at least partially on the basis of the content ancillary information.

RELATED APPLICATION

[0001] This application is a continuation-in-part of U.S. applicationSer. No. 09/226,521 file Jan. 7, 1999.

TECHNICAL FIELD OF THE INVENTION

[0002] The present invention relates to detection of media links (suchas URLs) which are embedded in programs that are transmitted bytelevision and/or radio signal transmission sources, such as televisionand/or radio networks, local broadcasters, cable operators, videoservers, Web sites, and the like.

BACKGROUND OF THE INVENTION

[0003] As used herein, programs mean commercials, regular programmingmaterial, documentaries, and/or the like, which are transmitted forreception by televisions, radios, computers, and other equipmentprovided with video and/or audio tuners. Also as used herein, medialinks include URLs embedded in video and/or audio, surrogate URLs, orany other links in video and/or audio that link a content recipient tocontent provided by a content provider (such as a Web site) or tocontent provided elsewhere in the video and/or audio whether suchcontent is stored in cache or not. A surrogate URL, for example, may bean ASCII or other code that is embedded in content and that may be usedto look up an URL for linking to content. An example of a media linkthat links a content recipient to content provided elsewhere in thevideo and/or audio is a trigger that, when received from the videoand/or audio, causes content, which was previously transmitted in thevideo and/or audio and cached by the receiver, to be displayed to thecontent recipient.

[0004] Programs are transmitted by transmission sources through the useof satellites, over the air by way of transmitting antennas, or overcables such as wires or optical fibers. These transmission sources canbe networks, local broadcasters, satellite broadcasters, video servers,Web sites, cable programmers, and the like.

[0005] It is frequently desirable to detect the transmission of programsby the transmission sources. For example, in preparing program ratingreports, the receivers of statistically selected panelists are meteredin order to determine at least (i) the channels to which the receiversare tuned and (ii) the times during which the receivers are tuned tothose channels. The resulting tuning data are extrapolated over thepopulation as a whole, or over relevant segments of this population, inorder to report ratings. However, because the identities of programscarried in the channels reported in the tuning data cannot always beinferred from the tuning data, it is necessary to determine, or at leastverify, the identity of the programs transmitted in the channels andduring the times covered by the tuning data.

[0006] As another example, advertisers often desire to verify certaininformation regarding the transmission of their commercials bytransmission sources. This information includes a verification (i) thatthe commercials were actually transmitted, (ii) that the commercialswere transmitted in their entirety, and (iii) that the commercials weretransmitted in the correct time slots and in the correct channels. Thisinformation allows advertisers to determine whether they received thevalue for which they contracted with the relevant transmission sources.

[0007] As yet another example, advertisers often desire to ascertain theadvertising strategies of competitors. These advertising strategies maybe discerned from the types of advertisements run by competitors, thecompetitors' expenditures on such advertisements, the media chosen tocarry such advertisements, and the like.

[0008] Accordingly, systems have been developed in order to identifytransmitted programs. For example, in connection with reporting programratings, a program verification system known as the AMOL (AutomatedMonitoring of Line-up) program verification system is operated by theassignee of the present invention. In this AMOL program verificationsystem, a code is inserted into the vertical blanking interval ofprograms. Monitoring equipment at sites located in relevant geographicalareas read the AMOL codes from transmitted programs and detect thechannels in which these programs are transmitted as well as the timesduring which these programs are transmitted. Accordingly, the AMOLprogram verification system is able to verify that particular programswere transmitted in corresponding particular channels, duringcorresponding particular time slots, and for particular correspondingamounts of time. The verified program/channel relationship, coupled withthe channel tuning data acquired from the receivers of the statisticallyselected panelists, are used to determine the programs to which thesereceivers were tuned.

[0009] As another example, the assignee of the present inventionoperates a service known as the Monitor Plus service in which sets ofcommercial monitoring equipment are placed in selected geographicalmonitoring areas. The sets of commercial monitoring equipment tune toeach of the channels available in the corresponding geographical areasand extract broadcast signatures from commercials carried in thesechannels. The channels, times, and dates of the broadcast signatureextractions are also noted. The extracted broadcast signatures arecompared to previously extracted reference signatures. In eachgeographical monitoring area, these reference signatures are stored in areference signature library along with identification informationregarding the commercials from which the reference signatures wereextracted.

[0010] Because there is typically many reference signatures stored in areference signature library, and because comparing the broadcastsignatures to all such reference signatures would require a substantialamount of time, hash codes are used to focus the search such that thesearch finds only those reference signatures which are potential matchesto the broadcast signatures. The hash codes are computed from one ormore characteristics, such as luminance, of the broadcast signatures sothat only those reference signatures producing similar hash codes withinsome range are compared to the broadcast signatures.

[0011] When broadcast signatures match reference signatures, theidentities of the transmitted commercials are known from the identityinformation stored with the matching reference signatures. Also, thechannels, times, and dates of commercial transmissions are known fromthe matching broadcast signatures. The sets of monitoring equipment canalso detect the length of the commercial as transmitted by comparingmultiple broadcast signatures and multiple reference signaturesextracted from the same commercial. Accordingly, reports can begenerated that permit advertisers to verify that their commercials havebeen run in the channels, on the days, in the time slots, and for thedurations desired, and/or to permit advertisers to ascertain theadvertising strategies of their competitors.

[0012] When broadcast signatures do not match reference signatures,however, it may be possible that a new commercial has been transmittedfor which there are no reference signatures stored in the library. Inthis case, the extracted broadcast signatures corresponding to eachpossibly new commercial are stored for later transmission to a centralfacility where the possibly new commercial is viewed and identified byan attendant. This viewing and identification process is usuallyreferred to as new commercial labelling. Once identified, the newcommercial's broadcast signatures are converted to reference signaturesand are stored in the reference signature libraries.

[0013] Clustering is performed in each geographical monitoring area sothat a geographical monitoring area does not send the same newcommercial multiple times to the central facility for new commercialdiscovery. During clustering in a geographical monitoring area, thebroadcast signatures of each possibly new commercial are compared to thebroadcast signatures of the other possibly new commercials in order todetect duplicates. Duplicates are not transmitted to the centralfacility. Accordingly, the efficiency of new commercial discovery isincreased because only one instance of each possibly new commercial istransmitted to, and processed by, the central facility. However, becausean instance of a possibly new commercial may be received at the centralfacility from more than one geographical monitoring area, clustering isagain performed at the central facility prior to each initiation of newcommercial discovery.

[0014] Furthermore, it is expected that other appliances, such ascomputers and set top boxes, will be equipped with tuners so that theseappliances can display video and/or audio, such as television and/orradio programs. It is also expected that this video and/or audio willcontain media links. Accordingly, if a user of a computer, digitaltelevision, set top box, or other video and/or audio receiving device isviewing a program of interest, and desires to access other informationassociated with the program, the user can click on the program. Clickingon the program will cause a media link, which is embedded in theprogram, to be sent back to a Web site or other content provider withthe result that additional information will be downloaded to the user'sappliance. In the case where the media links are self-activating, suchas where the media link is a trigger, clicking on the program need notbe required. Instead, the media link, when detected by the video, audio,and/or data receiving device, automatically causes the display ofancillary content which, for example, may have been previouslytransmitted in the video, audio, and/or data signal and cached in thereceiving device or in auxiliary equipment.

[0015] Because these media links will likely uniquely identify theprograms in which they are used, the present invention is directed to anarrangement for detecting these media links in order to determine theidentities of the programs in which the media links are embedded.Accordingly, the present invention is useful in an AMOL type system, aMonitor Plus type system, or in other systems in which the identity of atransmitted program is desired.

SUMMARY OF THE INVENTION

[0016] In accordance with one aspect of the present invention, adetection apparatus for the detection of a media link embedded in aprogram comprises a tuner and a meter. The tuner tunes to the program.The meter is coupled to the tuner and is arranged to detect the medialink embedded in the program tuned by the tuner.

[0017] In accordance with another aspect of the present invention, adata acquisition system for the acquisition of identifying data from aprogram comprises a tuner and a meter. The tuner is tuned to theprogram. The meter is coupled to the tuner and is arranged to capturefirst and second program identifying data identifying the program tunedby the tuner. The first program identifying datum is a media linkembedded in the program, and the second program identifying datum is aprogram identifying datum other than a media link.

[0018] In accordance with yet another aspect of the present invention, aprogram identification system comprises a tuner, a meter, and acomparator. The tuner is tunable to at least one of a plurality ofchannels. The meter is coupled to the tuner, and the meter is arrangedto detect content ancillary information from a program carried in achannel tuned by the tuner and to extract a broadcast signature from theprogram. The comparator is arranged to compare the broadcast signatureto a reference signature selected from a library of reference signaturesbased upon the content ancillary information.

[0019] In accordance with yet another aspect of the present invention, amethod of clustering signatures comprises the following: a) extractingbroadcast signatures from programs; b) detecting content ancillaryinformation from the programs; and, c) comparing one of the broadcastsignatures having content ancillary information associated therewithonly to others of the broadcast signatures having associated therewithsubstantially the same content ancillary information.

BRIEF DESCRIPTION OF THE DRAWINGS

[0020] These and other features and advantages of the present inventionwill become more apparent from a detailed consideration of the inventionwhen taken in conjunction with the drawings in which:

[0021]FIG. 1 illustrates, in accordance with the present invention, anexemplary metering system which may having both monitoring equipmentlocated at a monitoring site and a central facility located remotelyfrom the monitoring site;

[0022]FIG. 2 illustrates in flow chart form one embodiment of a programthat may be executed by the monitoring equipment at the monitoring siteof FIG. 1;

[0023]FIGS. 3 and 4 illustrate in flow chart form an alternativeembodiment of a program that may be executed by the monitoring equipmentat the monitoring site of FIG. 1; and,

[0024]FIG. 5 illustrates in flow chart form a clustering program thatmay be executed by the monitoring equipment at the monitoring siteand/or by the computer at the central facility of FIG. 1.

DETAILED DESCRIPTION

[0025] As shown in FIG. 1, monitoring equipment 10 is located at amonitoring site 12 and includes a tuner 14 which tunes to a channelcontained in a signal received by a signal acquisition device 16. Thesignal acquisition device 16 may be a modem, a satellite dish or otherantenna, or the like and acquires signals transmitted by transmissionsources. The signal carried in the channel to which the tuner 14 istuned is supplied to a meter 17 which includes a media link detector 18and a signature extractor 20. The media link detector 18 is arranged todetect media links in a manner which is similar to present meteringequipment that detect other ancillary codes, such as AMOL codes. In thepresent case, however, the media link detector 18 is arranged to decodethe signal carried in the channel to which the tuner 14 is tuned inorder to detect a media link. When the media link detector 18 detects amedia link, it causes the media link to be stored in a log 22.

[0026] In the event that a media link is not contained in a programwhich is carried in the channel to which the tuner 14 is tuned, thesignature extractor 20 extracts one or more broadcast signatures fromthe program. Broadcast signatures are likewise stored in the log 22.Signatures may be extracted in a manner disclosed in U.S. Pat. No.4,677,466. This patent discloses exemplary conditions which initiatesignature extraction. However, although specific conditions aredisclosed, it should be understood that other conditions may be used toinitiate signature extraction. For example, a signature may be extractedfrom each nth frame of a program. Moreover, any suitable techniques maybe used to collect the data that form the signatures.

[0027] A clock 24 is associated with the log 22 so that the time anddate that each media link is detected by the media link detector 18 maybe stored along with the corresponding media link. Similarly, the timeand date that each broadcast signature is extracted by the signatureextractor 20 may be stored along with the broadcast signature. Also, thechannel to which the tuner 14 is tuned at the time that a media link isdetected by the media link detector 18 or a signature is extracted bythe signature extractor 20 may be stored in the log 22 along with thecorresponding media link or broadcast signature.

[0028] Periodically, the data stored in the log 22 are transmitted bycommunication equipment 26 from the monitoring site 12 to a remotelylocated central facility 28 over a communication medium 30. Thecommunication equipment 26 may be arranged to periodically transmit thedata stored in the log 22 to the central facility 28. Alternatively, thecommunication equipment 26 may be arranged to transmit the data storedin the log 22 when the log 22 has a predetermined amount of data storedtherein. As a still further alternative, the communication equipment 26may be arranged to respond to polls from the central facility 28 inorder to initiate the transfer of data to the central facility 28. Stillother alternatives and combinations of alternatives are possible.

[0029] The communication medium 30 may be any communication medium whichsupports the transfer of information between remote locations. Forexample, the communication medium 30 may be a public telephone network,air accessed by radiating antennas such as satellite, cellular, andterrestrial antennas, over cables such as the RF return over a cableplant, the Internet, or the like.

[0030] A computer 32 is located at the central facility 28. The computer32 may be arranged to identify programs from the media links andbroadcast signatures transmitted to it by the communication equipment26. For example, in the case of media links, the computer 32 may bearranged to compare the media links received from the monitoring site 12to a library of media links which contain both the media links and thetitles and/or other identifying information corresponding to theprograms from which the media links were detected by the media linkdetector 18. Accordingly, when the computer 32 is provided with a medialink from the monitoring site 12, it can identify and/or verify theprogram which contains that media link and which was transmitted by atransmission source. The computer 32 can also determine, if desired,that the program containing the media link was transmitted at aparticular time, on a particular day, and on a particular channel fromthe channel, time, and date information transmitted to the centralfacility 28 along with the detected media link.

[0031] In some cases, the programs may be completely identified from themedia link itself. In this case, there is no need to use the look uptable in the identification process. In other cases, particularly wherea program has been transmitted for the first time, no information isprovided in the look up table from which the program may be identified.In this case, the media link may be used to access the Web site orcontent associated with the media link in order to discover the identityof the program, or the program may be viewed by personnel of the centralfacility 28 in order to discover the identity of the program. Then, theidentity of the program may be entered into the look up table under themedia link for future identifications.

[0032] The computer 32 may also be arranged to identify and/or verifyprograms which do not contain media links. For example, the computer 32may be arranged to compare the broadcast signatures received from themonitoring site 12 to a library of reference signatures which containboth the reference signatures and the titles and/or other identifyinginformation corresponding to the programs from which the referencesignatures were extracted. Accordingly, when the computer 32 is providedwith broadcast signatures from the monitoring site 12, it can identifyprograms and/or verify the transmission of programs by matching thesebroadcast signatures with the reference signatures stored in thereference signature library. The computer 32 can also determine, ifdesired, that the programs containing the extracted broadcast signatureswere transmitted at particular times, on particular days, and onparticular channels from the channel, time, and date informationtransmitted to the central facility 28 along with the extractedbroadcast signatures.

[0033] Alternatively, the computer 32 may use both detected media linksand extracted broadcast signatures, where available from the sameprogram, in order to increase certainty that a program is properlyidentified and/or verified. As a still further alternative, the computer32 may identify and/or verify a program from the media links in theevent that the computer 32 is unable to first identify and/or verify theprogram from the extracted broadcast signatures.

[0034] The meter 17 operates in accordance with a software routine 50shown in FIG. 2. The software routine 50, at a block 52, determines fromthe output of the tuner 14 whether a program of interest is received.For example, the software routine 50 at the block 52 may operate inaccordance with the above mentioned U.S. Pat. No. 4,677,466 in order todetermine the start of a program of interest. (Alternatively, thesoftware routine 50 at the block 52 may be arranged to simply detectwhen the tuner 14 is on and is tuned to a channel in which there iscontent. In this case, the output of the tuner 14 is continuouslymonitored for media links, and broadcast signatures are extracted fromthe output of the tuner 14 on a continuous basis.) A program of interestmay be a commercial, regular programming material, a documentary, and/orthe like.

[0035] If a program of interest is not detected at the block 52, thesoftware routine 50 waits for a program of interest. However, if aprogram of interest is detected, the software routine 50 at a block 54determines whether a media link is detected by the media link detector18 from a segment of the current program. For example, this segment mayhave a determinate length, such as n frames of the current program.Alternatively, this segment may have an indeterminate length determinedby conditions of the program signal as disclosed in the above mentionedU.S. Pat. No. 4,677,466.

[0036] If a media link is detected from the current segment of thecurrent program at the block 54, the media link is logged at a block 56.Because a media link is detected in the program of interest, it may notbe necessary to save any broadcast signatures which may have beenextracted from the current program prior to the time at which the medialink is detected. If so, the software routine 50 at a block 58 deletesfrom the log only the broadcast signatures extracted by the signatureextractor 20 from the current program, and program flow thereafterreturns to the block 52 to wait for the next program of interest.

[0037] On the other hand, if a media link is not detected from thecurrent segment of the current program at the block 54, the softwareroutine 50 at a block 60 extracts a broadcast signature from the currentprogram appearing at the output of the tuner 14. The software routine 50at a block 62 logs the broadcast signature extracted by the signatureextractor 20 at the block 60.

[0038] The software routine 50 then determines at a block 64 whether anend to the current program is detected. For example, the softwareroutine 50 at the block 52 may operate in accordance with the abovementioned U.S. Pat. No. 4,677,466 in order to determine the end of thecurrent program. If an end to the current program is not yet detected,program flow returns to the block 54 in order to search for a media linkfrom the next segment of the current program.

[0039] On the other hand, if an end of the current program is detectedat the block 64, program flow returns to the block 52 in order toprocess a next program. In this case, the current program contained nomedia link and the current program will be identified by the computer 32from the extracted broadcast signatures.

[0040] Instead of identifying a program from a media link, the medialink may be used to better focus the search for reference signatureswhich match broadcast signatures. This use of a media link isparticularly valuable in those instances where the media link is notunique, i.e., where the media link is used in more than one program and,therefore, does not uniquely identify a program. In addition to a medialink, other information which is ancillary to the program contentcontained in the program signal, such as closed captioning information,may be used for this reference signature search focusing. Accordingly,media links, closed captioning information, or other such ancillaryinformation may be referred to herein as content ancillary information(CAI).

[0041] A software routine 100, which is illustrated in FIGS. 3 and 4,uses content ancillary information in order to focus the search forreference signatures that are to be compared to broadcast signaturesduring the process of identifying a program. The communication equipment26 may employ, in addition to a transmitter, a computer in order toexecute the software routine 100.

[0042] The software routine 100, at a block 102, determines from theoutput of the tuner 14 whether a program of interest is received, asbefore. If a program of interest is not detected at the block 102, thesoftware routine 100 waits for a program of interest. However, if aprogram of interest is detected, the software routine 100 at a block 104determines whether content ancillary information is detected by themedia link detector 18 from a segment of the current program. If contentancillary information is detected from the current segment of thecurrent program at the block 104, the content ancillary information islogged at a block 106.

[0043] On the other hand, if content ancillary information is notdetected from the current segment of the current program at the block104, or after the content ancillary information is logged at a block106, the software routine 100 at a block 108 extracts a broadcastsignature from the current segment of the current program. The softwareroutine 100 at a block 110 logs the broadcast signature extracted by thesignature extractor 20 at the block 108.

[0044] The software routine 100 then determines at a block 112 whetheran end to the current program is detected. If an end to the currentprogram is not yet detected, the software routine 100 at a block 114waits for the next segment. When the next segment occurs, program flowreturns to the block 104. When the end of a current program is detectedat the block 112, a set of broadcast signatures has been extracted andstored for that program. Also, content ancillary information, ifdetected, is also stored for that program. This set of broadcastsignatures is compared to reference signatures stored in a referencesignature library as described below in an attempt to identify theprogram corresponding to this set of broadcast signatures.

[0045] Thus, if an end of the current program is detected at the block112, the software routine 100 at a block 116 determines whether contentancillary information was detected in the program just processed by theblocks 102-114. If content ancillary information was detected in theprogram just processed by the blocks 102-114, a search of the referencesignatures stored in the reference signature library is made at a block118 in order to find reference signatures corresponding to the contentancillary information. Such reference signatures were previouslyextracted from a program containing the same content ancillaryinformation and were loaded into the reference signature library inassociation with the corresponding content ancillary information.

[0046] If content ancillary information was not detected in the programjust processed by the blocks 102-114, hash codes corresponding to thebroadcast signatures extracted at the block 108 may be computed at ablock 120. A search of the reference signatures stored in the referencesignature library is made at a block 122 in order to find referencesignatures corresponding to the hash codes computed at the block 120.(Alternatively, the broadcast signatures extracted at the block 108 maybe compared to all reference signatures in the reference signatureslibrary.)

[0047] The reference signatures found at the block 118 or at the block122 are compared at a block 124 to the broadcast signatures extractedfrom the program at the block 108. If a sufficient match is found at theblock 124, the identification of the program stored in the referencesignature library along with the matching reference signatures is savedat a block 126 for later transmission to the central facility 28. Thetime at which the program was received, the length of the program asdetected, the channel in which the program was detected, and otherrelevant information may also be stored at the block 126 along with theprogram identification.

[0048] If a match is not found at the block 124, the broadcastsignatures extracted from the program at the block 108 and the contentancillary information, if any, for the program are saved at a block 128for later clustering and transmission to the central facility 28 so thatthe program can be identified during new program discovery. The time atwhich the program was received, the length of the program as detected,the channel in which the program was detected, and other relevantinformation may also be stored at the block 128 along with the broadcastsignatures extracted at the block 108 and the content ancillaryinformation, if any, detected at the block 104. After the identificationis saved at the block 126, or after the broadcast signatures and contentancillary information are saved at the block 128, program flow returnsto the block 102 to process the next program of interest.

[0049] Content ancillary information can also be used during clusteringperformed by the monitoring equipment 10 and/or by the central facility28 in order to cluster broadcast signatures corresponding to unknownprograms. Unknown programs are those programs whose broadcast signaturesdid not favorably compare to any reference signatures stored in thereference signature library and/or which did not contain a programidentifying code such as a media link. Accordingly, to implementclustering, the computer employed in the communication equipment 26and/or the computer 32 of the central facility 28 may execute a softwareroutine 200 shown in FIG. 5.

[0050] The time for clustering is determined at a block 202. Forexample, clustering by the monitoring equipment 10 and/or by thecomputer 32 may be performed periodically, such as once a day, or inresponse to an event such as a poll or an instruction from a user, orthe like. When it is time for clustering as determined at the block 202,the broadcast signatures corresponding to one unknown program arecompared to the broadcast signatures corresponding to other unknownprograms at a block 204 based upon the content ancillary informationassociated with each set of broadcast signatures. Thus, all sets ofbroadcast signatures corresponding to the same first content ancillaryinformation (e.g., CAI1) are compared to one another. Duplicates arethen eliminated so that only one set of broadcast signaturescorresponding to content ancillary information CAI1 is kept. Similarly,all sets of broadcast signatures corresponding to the same secondcontent ancillary information (e.g., CAI2) are compared to one another,and duplicates are then eliminated so that only one set of broadcastsignatures corresponding to content ancillary information CAI2 is kept.This process is repeated for each of the remaining content ancillaryinformation. Then, each set of broadcast signatures which did not have acontent ancillary information associated therewith is compared at ablock 206 to all other remaining sets of broadcast signatures, includingthose remaining sets of broadcast signatures having content ancillaryinformation associated therewith, and any duplicates are eliminated. Asa result of the processing at the blocks 204 and 206, the remaining setsof broadcast signatures are unique and the software routine 200 ends. Asa result, it is necessary to view an unknown program only once duringnew program discovery.

[0051] Certain modifications of the present invention have beendiscussed above. Other modifications will occur to those practicing inthe art of the present invention. For example, the tuner 14 may be atuner which tunes to a single channel so that a tuner 14 is required foreach channel to be monitored. In this case, a multiplexer may bearranged to multiplex signals from some or all of the instances of thetuner 14 to the meter 17 so that each multiplexed output of theinstances of the tuner 14 is processed in turn by the monitoringequipment 10. Alternatively, instead of multiplexing, each tuner 14 maybe provided in its own set of monitoring equipment 10. On the otherhand, the tuner 14 may be a scanning tuner for tuning to each of thechannels available at the monitoring equipment 10, or the channels maybe divided up between several scanning tuners or between a combinationof scanning tuners and non-scanning tuners.

[0052] Also, as discussed above, the signature extractor 20 is arrangedto extract signatures from the programs to which the tuner 14 is tuned.However, other program identifying data may be captured instead of, orin addition to, signatures. For example, AMOL codes may be detected.Also, the monitoring equipment may be arranged to prompt audiencemembers to manually input a program identification in the event that amedia link is not found in a program. In this case, the non-media linkprogram identifying datum is the manually entered programidentification.

[0053] Moreover, it is not necessary to delete from the log thosebroadcast signatures which are extracted from a program from which amedia link is also detected. In this case, the block 58 may beeliminated.

[0054] Furthermore, as described above, the meter 17 operates inaccordance with the software routine 50. However, the meter 17 may beimplemented in hardware, in a combination of software or hardware, orthe like.

[0055] In addition, detected media links as described above may be usedto identify the programs received by a receiver and/or to verify thatthe programs have been transmitted as intended. However, the detectionof media links may have many other uses. For example, the detection ofmedia links also may be used to verify that the correct media links weretransmitted in the correct programs, over the correct channels, at thecorrect times, in the correct numbers, etc.

[0056] Accordingly, the description of the present invention is to beconstrued as illustrative only and is for the purpose of teaching thoseskilled in the art the best mode of carrying out the invention. Thedetails may be varied substantially without departing from the spirit ofthe invention, and the exclusive use of all modifications which arewithin the scope of the appended claims is reserved.

What is claimed is:
 1. A detection apparatus for the detection of amedia link embedded in a program comprising: a tuner tuned to theprogram; and, a meter coupled to the tuner and arranged to detect themedia link embedded in the program tuned by the tuner.
 2. The detectionapparatus of claim 1 wherein the tuner comprises a scanning tuner. 3.The detection apparatus of claim 2 wherein the scanning tuner tunes to aplurality of channels, and wherein the meter is arranged to detect medialinks from programs carried in the tuned channels.
 4. The detectionapparatus of claim 1 further comprising a program identifier, whereinthe program identifier is arranged to identify the program directly fromthe media link.
 5. The detection apparatus of claim 1 further comprisinga program identifier, wherein the program identifier is arranged toidentify the program by accessing a content provider.
 6. The detectionapparatus of claim 1 further comprising a program identifier, whereinthe program identifier is arranged to received a manual identificationof the program.
 7. The detection apparatus of claim 1 wherein the medialink is a URL.
 8. The detection apparatus of claim 1 wherein the medialink is a code referenced to a URL.
 9. The detection apparatus of claim1 wherein the media link is a trigger.
 10. A data acquisition system forthe acquisition of identifying data from a program comprising: a tunertuned to the program; and, a meter coupled to the tuner and arranged tocapture first and second program identifying datum identifying theprogram tuned by the tuner, wherein the first program identifying datumis a media link embedded in the program, and wherein the second programidentifying datum is a program identifying datum other than a medialink.
 11. The data acquisition system of claim 10 wherein the tunercomprises a scanning tuner.
 12. The data acquisition system of claim 11wherein the scanning tuner tunes to a plurality of channels, wherein themeter is arranged to capture media links from programs in the tunedchannels, and wherein the meter is arranged to capture second programidentifying data identifying programs in the tuned channels.
 13. Thedata acquisition system of claim 10 further comprising a programidentifier arranged to identify the program from the first and/or secondprogram identifying data.
 14. The data acquisition system of claim 13wherein the program identifier is arranged to identify the program bycomparing the first and/or second program identifying data tocorresponding first and/or second reference identifying data.
 15. Thedata acquisition system of claim 10 wherein the second programidentifying datum is a signature extracted from the program.
 16. Thedata acquisition system of claim 10 wherein the data acquisition systemis arranged to keep the second program identifying datum only if themeter fails to acquire the first program identifying datum.
 17. The dataacquisition system of claim 10 further comprising a program identifier,wherein the program identifier is arranged to identify the programdirectly from the media link.
 18. The data acquisition system of claim10 further comprising a program identifier, wherein the programidentifier is arranged to identify the program by accessing a contentprovider.
 19. The data acquisition system of claim 10 further comprisinga program identifier, wherein the program identifier is arranged toreceive a manual identification of the program.
 20. The data acquisitionsystem of claim 10 wherein the media link is a URL.
 21. The dataacquisition system of claim 10 where in the media link is a co dereferenced t o a URL.
 22. The data acquisition system of claim 10wherein the media link is a trigger.
 23. The data acquisition system ofclaim 10 wherein the meter is arranged to capture the second programidentifying datum from the program only in the event that the meter isunable to capture the first program identifying datum from the program.24. A program identification system comprising: a tuner tunable to atleast one of a plurality of channels; a meter coupled to the tuner,wherein the meter is arranged to detect content ancillary informationfrom a program carried in a channel tuned by the tuner and to extract abroadcast signature from the program; and, a comparator arranged tocompare the broadcast signature to a reference signature, wherein thereference signature is selected from a library of reference signaturesbased upon the content ancillary information.
 25. The programidentification system of claim 24 wherein the content ancillaryinformation is a media link.
 26. The program identification system ofclaim 25 wherein the media link is a URL.
 27. The program identificationsystem of claim 25 wherein the media link is a code referenced to a URL.28. The program identification system of claim 25 wherein the media linkis a trigger.
 29. The program identification system of claim 24 whereinthe content ancillary information is closed captioning information. 30.The program identification system of claim 24 wherein, if the broadcastsignature does not have associated content ancillary information, thecomparator is arranged to compare the broadcast signature to a referencesignature selected from a library of reference signatures based upon ahash code.
 31. The program identification system of claim 24 wherein thereference signature includes an identification of the program.
 32. Theprogram identification system of claim 24 wherein the broadcastsignature includes the channel and a time at which the broadcastsignature is extracted.
 33. The program identification system of claim32 wherein the reference signature includes an identification of theprogram.
 34. A method of clustering signatures comprising the following:a) extracting broadcast signatures from programs; b) detecting contentancillary information from the programs; and, c) comparing one of thebroadcast signatures having content ancillary information associatedtherewith only to others of the broadcast signatures having associatedtherewith substantially the same content ancillary information.
 35. Themethod of claim 34 wherein the comparison of broadcast signaturescomprises the following: comparing the one broadcast signature to othersof the broadcast signatures not having associated therewith any contentancillary information.
 36. The method of claim 34 wherein the onebroadcast signature is a first broadcast signature, and wherein thecomparison of broadcast signatures comprises the following: comparing asecond broadcast signature to others of the broadcast signatures nothaving content ancillary information associated therewith, wherein thesecond broadcast signature also does not have content ancillaryinformation associated therewith.
 37. The method of claim 34 wherein thecontent ancillary information is a media link.
 38. The method of claim37 wherein the media link is a URL.
 39. The method of claim 37 whereinthe media link is a code referenced to a URL.
 40. The method of claim 37wherein the media link is a trigger.
 41. The method of claim 34 whereinthe content ancillary information is closed captioning information. 42.The method of claim 34 further comprising comparing the one broadcastsignature to a reference signature, wherein the reference signature isselected from a library of reference signatures based on the contentancillary information.
 43. The method of claim 42 wherein the contentancillary information is a media link.
 44. The method of claim 43wherein the media link is a URL.
 45. The method of claim 43 wherein themedia link is a code referenced to a URL.
 46. The method of claim 43wherein the media link is a trigger.
 47. The method of claim 42 whereinthe content ancillary information is closed captioning information.